home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 June / EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso / earcd / comm1 / intsdkss.lha / include / netinet / tcp_seq.h < prev    next >
C/C++ Source or Header  |  1996-04-09  |  2KB  |  49 lines

  1. /*
  2.  * Copyright (c) 1982, 1986 Regents of the University of California.
  3.  * All rights reserved.
  4.  *
  5.  * Redistribution and use in source and binary forms are permitted
  6.  * provided that the above copyright notice and this paragraph are
  7.  * duplicated in all such forms and that any documentation,
  8.  * advertising materials, and other materials related to such
  9.  * distribution and use acknowledge that the software was developed
  10.  * by the University of California, Berkeley.  The name of the
  11.  * University may not be used to endorse or promote products derived
  12.  * from this software without specific prior written permission.
  13.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
  14.  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  15.  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  16.  *
  17.  *    @(#)tcp_seq.h   7.3 (Berkeley) 6/29/88
  18.  */
  19.  
  20. /*
  21.  * TCP sequence numbers are 32 bit integers operated
  22.  * on with modular arithmetic.    These macros can be
  23.  * used to compare such integers.
  24.  */
  25. #define SEQ_LT(a,b)     ((int)((a)-(b)) < 0)
  26. #define SEQ_LEQ(a,b)    ((int)((a)-(b)) <= 0)
  27. #define SEQ_GT(a,b)     ((int)((a)-(b)) > 0)
  28. #define SEQ_GEQ(a,b)    ((int)((a)-(b)) >= 0)
  29.  
  30. /*
  31.  * Macros to initialize tcp sequence numbers for
  32.  * send and receive from initial send and receive
  33.  * sequence numbers.
  34.  */
  35. #define tcp_rcvseqinit(tp) \
  36.     (tp)->rcv_adv = (tp)->rcv_nxt = (tp)->irs + 1
  37.  
  38. #define tcp_sendseqinit(tp) \
  39.     (tp)->snd_una = (tp)->snd_nxt = (tp)->snd_max = (tp)->snd_up = \
  40.         (tp)->iss
  41.  
  42. #define TCP_ISSINCR    (125*1024)      /* increment for tcp_iss each second */
  43.  
  44. #ifdef KERNEL
  45. #if 0
  46. extern tcp_seq tcp_iss;         /* tcp initial send seq # */
  47. #endif
  48. #endif
  49.